using System;

namespace UserManagementService.Permissions;

/// <summary>
/// 用户权限变更历史DTO
/// </summary>
public class UserPermissionHistoryDto
{
    /// <summary>
    /// 历史记录ID
    /// </summary>
    public Guid Id { get; set; }

    /// <summary>
    /// 用户ID
    /// </summary>
    public Guid UserId { get; set; }

    /// <summary>
    /// 权限名称
    /// </summary>
    public string PermissionName { get; set; } = string.Empty;

    /// <summary>
    /// 操作类型（Grant/Revoke）
    /// </summary>
    public string OperationType { get; set; } = string.Empty;

    /// <summary>
    /// 操作人
    /// </summary>
    public string? OperatorName { get; set; }

    /// <summary>
    /// 操作时间
    /// </summary>
    public DateTime OperationTime { get; set; }

    /// <summary>
    /// 操作原因
    /// </summary>
    public string? Reason { get; set; }

    /// <summary>
    /// 操作IP地址
    /// </summary>
    public string? IpAddress { get; set; }
}